package org.skywork.entitys.basic;

// *************************************************************************/
// Charada Soft
// Area de Desarrollo de Sistemas de Información
// *************************************************************************/
// Proyecto : SkyWork Entitys
// Archivo : Empresa.java
// Descripcion : Clase Empresa
// *************************************************************************/
// Version : 2.11.8
// Fecha de Creación: 29 de Diciembre de 2014
// Author : Daniel Andres Castillo Pedroza
// *************************************************************************/

import org.skywork.entitys.basic.dto.EmpresaDTO;
import org.skywork.entitys.basic.dto.IDTO;
import org.skywork.entitys.system.SkyWorkConstants;

public class Empresa extends Entidad implements IDTO <EmpresaDTO> {
    
    // Atributos de la clase Empresa
    
    private final String nit;
    private String nombre;
    private String direccion;
    private String barrio;
    private String ciudad;
    private String telefono;
    private String celular;
    private String correo;
    
    // Constructor de la clase Empresa

    public Empresa(String nit) {
        this.nit = nit;
    }
    
    // Metodos de la clase Empresa

    public void setNombre(String nombre) {
        this.nombre = nombre;
    }

    public void setDireccion(String direccion) {
        this.direccion = direccion;
    }

    public void setBarrio(String barrio) {
        this.barrio = barrio;
    }

    public void setCiudad(String ciudad) {
        this.ciudad = ciudad;
    }

    public void setTelefono(String telefono) {
        this.telefono = telefono;
    }

    public void setCelular(String celular) {
        this.celular = celular;
    }

    public void setCorreo(String correo) {
        this.correo = correo;
    }

    public String getDireccion() {
        return direccion;
    }

    public String getBarrio() {
        return barrio;
    }

    public String getCiudad() {
        return ciudad;
    }

    public String getTelefono() {
        return telefono;
    }

    public String getCelular() {
        return celular;
    }

    public String getCorreo() {
        return correo;
    }
    
    // Metodos sobreescritos de la clase Empresa

    @Override
    public String getIdentificacion() {
        return nit;
    }

    @Override
    public String getTipoEntidad() {
        return SkyWorkConstants.EMPRESA;
    }

    @Override
    public String getNombreEntidad() {
        return nombre;
    }
    
    @Override
    public void setDatos(EmpresaDTO empresaDTO) {
        setNombre(empresaDTO.getNombre());
        setDireccion(empresaDTO.getDireccion());
        setBarrio(empresaDTO.getBarrio());
        setCiudad(empresaDTO.getCiudad());
        setTelefono(empresaDTO.getTelefono());
        setCelular(empresaDTO.getCelular());
        setCorreo(empresaDTO.getCorreo());
    }
    
    @Override
    public EmpresaDTO getDatos() {
        // Instanciando objeto para contener los Datos
        EmpresaDTO empresaDTO = new EmpresaDTO();
        
        // Cargando los datos en el objeto
        empresaDTO.setNombre(getNombreEntidad());
        empresaDTO.setDireccion(getDireccion());
        empresaDTO.setBarrio(getBarrio());
        empresaDTO.setCiudad(getCiudad());
        empresaDTO.setTelefono(getTelefono());
        empresaDTO.setCelular(getCelular());
        empresaDTO.setCorreo(getCorreo());
        
        return empresaDTO; // Retornando datos de la Persona
    }
}